package com.zsck.zsgy.api

import com.zsck.zsgy.base.BaseResponse
import com.zsck.zsgy.ui.auth.bean.AuthBean
import com.zsck.zsgy.ui.guide.bean.KeyListBean
import com.zsck.zsgy.ui.guide.bean.VersionListBean
import com.zsck.zsgy.ui.main.ContentConfig
import com.zsck.zsgy.ui.main.bean.*
import retrofit2.http.*

interface ApiService {

    /**登录*/
    @GET("common-service/h5/sms/validateSmsCodeForRegister")
    suspend fun getLogin(
        @Query("verificationCode") verificationCode: String,
        @Query("phoneNumber") phoneNumber: String,
        @Query("registrationId") registrationId: String
    )
            : BaseResponse<AuthBean>
    /**
     * 获取服务器版本
     * @param
     * @return
     */
    @POST("common-service/version/list")
    suspend fun postGetVersion(@Body map: HashMap<String, String>):BaseResponse<List<VersionListBean>>

    /**
     * 获取值集集合
     * @param
     * @return
     */
    @GET("common-service/h5/dictionary/getAllDictoryByKey")
    suspend fun getKeyList(@Query("pkPath") pkPath: String):BaseResponse<KeyListBean>


    /**
     * 根据城市名称查询城市信息
     */
    @GET("common-service/city/getCityByCityName")
    suspend fun getCityByCityName(@Query("cityName") cityName: String):BaseResponse<List<CityModel>>

    /**
     * 获取首页数据
     */
    @POST("customer-service/h5/contentManagement/getBannerContentToApp")
    suspend fun postGetHome(@Body map: HashMap<String, String>):BaseResponse<HomeBean>
//    suspend fun postGetHome(@Field("cityId")cityId:String,@Field("cityName")cityName:String,
//                            @Field("latitude")latitude:String,@Field("longitude")longitude:String):BaseResponse<HomeBean>

    /**
     * 获取简单圈品物 故事 分享列表
     */
    @POST("customer-service/h5/contentManagement/simpleContentManagementList")
    suspend fun simpleCircleList(@Body map: HashMap<String, Any>): BaseResponse<SimpleCircleListBean>

    /**
     * 获取简单圈活动列表
     * @param
     * @return
     */
    @GET("customer-service/h5/activity/getPublicActivityList")
    suspend fun simpleCircleActivity(@QueryMap map: HashMap<String, Any>):BaseResponse<SimpleCircleActivityBean>



    /**
     * 获取个人中心活动
     * @return
     */
    @POST("customer-service/h5/contentManagement/contentManagementConfigShowList")
    suspend fun mineConfigShowList(@Body  map: HashMap<String, Any>):BaseResponse<List<ContentConfig>>

    /**
     * 获取用户信息
     * @param
     * @return
     */
    @GET("customer-service/h5/member/getMemberInfoOnH5")
    suspend fun getUserInfo():BaseResponse<UserInfoBean>

    /**
     * 获取统计个人中心数据(收藏、预约、预定、优惠券) 总数，和消息未读总数
     * @param
     * @return
     */
    @GET("customer-service/h5/member/getStatisticsMsgInfo")
    suspend fun msgInfo():BaseResponse<MsgNumberBean>


}